import { login, register } from '@/api/user'
import { getToken, setToken } from '@/utils/auth'

const state = {
  // 刷新页面时，先看看本地存储有没有备份 没有是空
  // token: localStorage.getItem('token') || ''

  // Cookies 获取 token
  token: getToken() || ''
}
const mutations = {
  setToken(state, data) {
    // 每当将 token 存入 vuex 的时候，同时存一份到本地存储
    // localStorage.setItem('token', data)

    // Cookies 存储 token
    setToken(data)
    state.token = data
  },
  romToken(state) {
    state.token = ''
  }

}
const actions = {
  // 登录
  async login(store, data) {
    // 发送请求 登录页应该将用户填写的账号和密码作为 data 传入
    const res = await login(data)
    console.log(res)
    store.commit('setToken', res.jwt)
  },
  async logout(store) {
    store.commit('romToken')
  },
  // 注册
  async register(store, data) {
    const res = await register(data)
    console.log(res)
  }

}

export default {
  namespaced: true,
  state,
  mutations,
  actions
}

